1. Field of the Invention
The present invention relates to communication between a computer system and a human user of the computer system, and more particularly, to a technique in which the computer system monitors an input of the user and, based on the input, provides a reminder for the user to perform an action. The invention can help the user to correct or avoid errors. One embodiment of the present invention reviews an electronic mail (email) message prepared by the user, and under an appropriate condition, provides a reminder for the user to include an attachment with the email.
2. Description of the Prior Art
Some conventional computer software applications for computer processing systems include aids that review or actively monitor an input provided by a user, and based on the input, or a perceived error in the input, provide a recommendation to the user. The aids often improve the quality of work performed by the user and the user's overall level of satisfaction with the software application. Several such aids are described below.
When a user of a file has completed working with the file, the user typically closes the file. If the user makes a change to the contents of the file, but has not yet saved the file when providing a command to close the file, some software applications display an advisory giving the user a further opportunity to save the file before closing it. This aid operates by recognizing a state of a combination of basic conditions.
If ((a user changed a file) AND (the user has not yet saved the file) AND (the user has issued a command to close the file)), then display an advisory.
A spell checker can compare a word in a document with words in a list of correctly spelled words. If the spelling of the word being reviewed does not match with that of any word in the list, then the spell checker flags the word as being potentially misspelled. The user taking notice of such a flagged word is alerted to, and thus has an opportunity to correct, the potential misspelling.
A grammar checker can recognize a combination or pattern of words that either does not conform to a grammar rule, or affirmatively violates a grammar rule. For example, a grammar checker can recognize a text string “the the cat”, and flag the double occurrence of the word “the”.
Some word processors proactively provide assistance to a user while the user is preparing a document. For example, a word processor can recognize a character string that appears to be a beginning of a date, and react by displaying a current date. In another case the word processor can recognize a character string that appears to be a beginning of a word or phrase, and react by displaying a suggested full-length version of the apparent word or phrase. In yet another case the word processor can recognize a format of a document as being a beginning of a letter, and react by offering to assist by providing a template within which the letter can be structured.
Some aids are also provided in an email application. An email message usually includes a header that contains an email address of a party with whom a user of the email application is corresponding. The email application can review the header and query the user as to whether the user wishes to add the email address to an address book.
Generally, these aids provide a recommendation to the user either upon recognition of a particular set of basic conditions, as in the case of providing a reminder to save a file, or upon a failure to recognize a particular condition, as in the case of the spell checker. The word processor and email applications may go a bit further in that they monitor a word, a phrase or a format, and react by offering a suggestion or other form of assistance. However, none of these aids appear to monitor or recognize a term in the user's input and react by providing a reminder for the user to perform an action.
There is a need for an improved technique for providing an advisory to a user of a processing system. For example, if a user of an email application prepares an email message in which the user indicates an intent to include an attachment with the email, the user would benefit by being provided with a reminder to include the attachment.